home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / language / bcf.lzh / BCFMAN.TXT < prev    next >
Text File  |  1991-03-05  |  22KB  |  540 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.              *******************************************
  7.              *                                         *
  8.              *        BC-FORTRAN77 Version 1.3C        *
  9.              *                                         *
  10.              *             Copyright © 1990            *
  11.              *                                         *
  12.              *              Andre Koestli              *
  13.              *        Martin-Luther-Strasse 63         *
  14.              *          W-7000 Stuttgart 50            *
  15.              *       Federal Republic of Germany       *
  16.              *                                         *
  17.              *******************************************
  18.  
  19.  
  20.  
  21. 1.  PREFACE
  22. ===========
  23.  
  24.  
  25. About this text
  26. ---------------
  27.  
  28. The following text is a short introduction to the BC-FORTRAN77 Version C
  29. development system, written by Andre Koestli. He holds the copyright of
  30. this product, but does allow everybody to use it for noncommercial and
  31. nonmilitary applications.
  32.  
  33.  Florian Nold (email address MEHA@DFRRUF1.BITNET) translated the original
  34. german documents into english and has provided a supplementary dictionary
  35. explaining the error and warning messages (see appendix). Many thanx to
  36. Mr. Ken McNorton for reading and correcting this text. The original
  37. german introduction (file lies.txt) has also been included.
  38.  
  39. If you find any mistakes in this english translation please write them to
  40. Florian Nold. Errors and suggestions to the BC-FORTRAN77 system itself
  41. have to be send to the author A. Koestli himself, since Florian Nold has
  42. NO connection whatsoever with him.
  43.  
  44.  
  45. Preface by the author of BC-FORTRAN77
  46. -------------------------------------
  47.  
  48. Version 'C' of BC-FORTRAN77, consisting of the following 7 described
  49. files, was completely developed by Andre Koestli. I, Andre Koestli,
  50. allow the general use of Version 'C' for noncommercial applications.
  51. All rights remain entirely by me. I do not permit the sale of Version 'C'
  52. under any circumstances, not even in connection with other products.
  53. This text may not be changed and it has to be included with every copy
  54. of Version 'C'. For commercial applications Version 'P' must be used
  55. (see below).
  56.  
  57. It is STRICTLY forbidden to use BC-FORTRAN77 Version 'C' for any military
  58. purpose or research.
  59.  
  60. March 1990, A. Koestli
  61.  
  62.  
  63. BC-FORTRAN77 version 'C' is part of an extensive development system
  64. called version 'P' (see below). The purpose of version 'C' is to make a
  65. FORTRAN77 compiler available for programming courses. Another advantage
  66. is that BC-FORTRAN77 is available for Amiga, Atari ST and MS-DOS
  67. computers.
  68.  
  69.  
  70. 2.  BC-FORTRAN77 version 'P'
  71. ============================
  72.  
  73.  
  74. BC-FORTRAN77 version 'P' is a large development system, consisting of a
  75. compiler, linker, editor, precompiler and a version managment system,
  76. which are all embedded in a user friendly desktop shell. This shell only
  77. compiles source, which has been changed since the last compiler run.
  78. So even large programs, consisting of hundreds of subroutines, will be
  79. processed in a few seconds. Version 'P' supports the use of a mathema-
  80. tical coprocessor and special 68020 commands.
  81.  
  82. Version 'P' includes a comfortable debugger for interactively testing
  83. programs. Supplementary libraries (e.g. plot output) are also included.
  84.  
  85. The price of version 'P' is 350 DM (incl. manual, 150 pages). To order
  86. verison 'P' please write directly to A. Koestli. At the moment Version
  87. 'P' is only available for ATARI ST and Amiga, not for MS-DOS machines.
  88.  
  89.  
  90. 3.  BC-FORTRAN77 Version C
  91. ==========================
  92.  
  93.  
  94. BC-FORTRAN77 version 'C', which is described in the rest of this text,
  95. includes the following files:
  96.  
  97.       LIES.TXT    original german version of this text, written  by Andre
  98.                   Koestli, the author of BC-FORTRAN77.
  99.                   ('lies' is the german word for 'read')
  100.       BCFMAN.TXT  this text
  101.       BCFMAN.TEX  TeX/LaTeX version of this text
  102.       BCF.TTP     the compiler
  103.       BCL.TTP     the linker
  104.       BCRTSY.B    the runtime library
  105.       MATHLIB.B   library (incl. FORTRAN77 standard functions)
  106.  
  107. Be sure to include ALL these files without any changes when copying
  108. BC-FORTRAN77.
  109.  
  110. Using a command-line-interpreter or a shell (e.g. gulam) would be the
  111. best way to work with BC-FORTRAN77. If you don't have any shell, you can
  112. start BC-FORTRAN77 from the desktop. Filenames and options can be entered
  113. in the dialogbox, which appears after double clicking the program icons.
  114.  
  115.  
  116. 4.  The Installation
  117. ====================
  118.  
  119.  
  120. The simplest way is to put all the files in the same directory. If you
  121. prefer to store the binaries, sources, etc. in distinct directories, put
  122. BCF.TTP and BCL.TTP in the directory, where the shell would search for
  123. the bin-stuff.
  124. BCRTSY.B and MATHLIB.B should be moved to the directory \BC of the actual
  125. drive.
  126.  
  127.  
  128. 5.  The Compiler BCF.TTP
  129. ========================
  130.  
  131.  
  132. To invoke the compiler enter
  133.  
  134.       BCF [-options] filename
  135. or
  136.       double click on the BCF.TTP-icon on the desktop and enter options
  137.       and filename.
  138.  
  139. If the filename does not contain any point, the extension .F will be
  140. appended. In any case the compiler will write its output to the file
  141. filename.B.
  142.  
  143. Examples:
  144.  
  145.       BCF -D TEST.F     compile the file TEST.F to TEST.B using the
  146.                         debug-option
  147.       BCF TEST SUB      compile the file TEST.F to TEST.B and SUB.F to
  148.                         SUB.B
  149.       BCF TEST.X        compile the file TEST.X to TEST.B
  150.  
  151.  
  152. Compiler Options
  153. ----------------
  154.  
  155.       -D    Debug, equivalent to -BVL.
  156.       -B    deBugcode, uses -H implicit, generate code to check
  157.             arraybounds and substrings.
  158.       -H    parcHeck, generate code to check parameter lists and stack
  159.             overflow.
  160.       -V    Varlist, generate list of variables used by the debugger
  161.       -L    Lineslist, generate list of linenumbers for the debugger
  162.       -U    Uppercase, convert lowercase characters to uppercase
  163.             (except character constants and FORMAT statements).
  164.             If this option is not specified the compiler will treat
  165.             xy, xY, Xy, XY as 4 different variables !
  166.       -F    Freeinput, allows Free-Form-Input-Format (not standard !)
  167.       -P    Protocol, print compiler listing.
  168.       -W    Wait for RETURN key when compiler has finished.
  169.  
  170.  
  171. Language-Extensions and Restrictions
  172. ------------------------------------
  173.  
  174. BC-FORTRAN77 supports the fully FORTRAN77 standard defined by ANSI/ISO.
  175. This standard is often ignored by some special features. I do not
  176. recommend the use of these extensions, because they do not comply with
  177. the ANSI standard and are therefore not precisely defined.
  178.  
  179. The most important specialities are:
  180.  
  181.       INTEGER*1         8 bit INTEGER
  182.       INTEGER*2         16 bit INTEGER
  183.       INTEGER*4         same as INTEGER
  184.       LOGICAL*1         8 bit LOGICAL
  185.       LOGICAL*2         8 bit LOGICAL
  186.       LOGICAL*4         same as LOGICAL
  187.       IMPLICIT NONE     turn off all implicit typedefs
  188.       COMMON /adr/      absolute addressed COMMON, adr may be a constant
  189.                         or a simple variable
  190.       EQUIVALENCE()     between CHARACTER and other types and mixing in
  191.                         COMMON blocks
  192.  
  193.       recursive subroutine calls
  194.       max. length of names: 8 chars. (standard 6 chars.)
  195.  
  196.  
  197. The most important restrictions are:
  198.  
  199.       32kB  code per subroutine
  200.       32kB  SAVE/DATA per subroutine or BLOCK DATA
  201.       700   subroutines per file
  202.       500   different COMMON blocks per file
  203.  
  204. There are also some restrictions, which would cause a compile-time-error,
  205. if subroutines are unreasonable large. In most cases the 32kB limit would
  206. be exceeded anyway.
  207.  
  208.  
  209. 6.  The Linker BCL.TTP
  210. ======================
  211.  
  212.  
  213. To invoke the linker just type
  214.  
  215.       BCL [-options] filename ..
  216.  
  217. or click the BCL.TTP icon on the desktop and enter options and filenames.
  218.  
  219. If the filename doesn't contain any point, the extension .B will be
  220. appended. The executable program will be stored using the name of the
  221. first file a